package com.backstage.service;

import com.backstage.common.page.Page;
import com.backstage.entity.Menu;
import com.backstage.entity.Role;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * @Project authority
 * @Package com.backstage.service
 * @Data 2017/7/27下午 3:49.
 * @Aurhor 阮雪峰
 */
public interface RoleService {
    /**
     * 分页查询角色
     * @param page
     * @param role
     */
    void roleByPage(Page<Role> page, Role role);

    /**
     * 新增角色
     * @param role
     */
    void add(Role role);

    /**
     * 修改
     * @param role
     */
    void edit(Role role);

    /**
     * 删除
     * @param roles
     */
    void delete(ArrayList<Role> roles);

    /**
     * 分配权限
     * @param role
     */
    void allotPower(Role role);

    /**
     * 通过id查询角色
     * @param role
     * @return
     */
    Object queryRoleById(Role role);

    /**
     * 查询角色权限
     * @param role
     * @return
     */
    Map<String, List<Menu>> getRoleMenu(Role role);
}
